<template>
  <div>
    <a-form :model="formCon">
      <a-form-item
        field="type"
        label="合并类型"
        style="font-weight: 600; background: #f2f4f7"
      >
        <div>权限</div>
      </a-form-item>
      <a-form-item field="customerTypeOption" label="客户类型">
        <a-radio-group v-model="formCon.customerTypeOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“不启用”，计划员在需求汇总时，系统不区分“客户类型”。不同客户类型的需求可以被合并为一条结果"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="projectOption" label="项目">
        <a-radio-group v-model="formCon.projectOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“不启用”，计划员在需求汇总时，系统不区分“项目”。不同项目的需求 可以被合并为一条结果"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="materialSameOption" label="物料">
        <a-radio-group v-model="formCon.materialSameOption">
          <a-radio :value="1">相同物料</a-radio>
        </a-radio-group>
        <a-tooltip content="当前针对相同物料的需求进行合并，不同物料不能合并">
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="procurementPeriodOption" label="采购期段">
        <a-radio-group v-model="formCon.procurementPeriodOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“不启用”，计划员在需求汇总时，系统不区分需求时间点，只要是汇总的 多个时间点的需求，都会被合并为一条结果，时间为最早时间点的需求，数量为所有需求数量之和"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="aircraftTypeMarkOption" label="机型">
        <a-radio-group v-model="formCon.aircraftTypeMarkOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“启用”，计划员在需求汇总时，系统区分“机型”。不同机型的需求，在需求汇总时按照“机型”汇总为多条需求"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="batchOption" label="批次">
        <a-radio-group v-model="formCon.batchOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“启用”，计划员在需求汇总时，系统区分“批次”。不同批次的需求，在需求汇总时按照“批次”汇总为多条需求"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="manufactureLotnoOption" label="架次">
        <a-radio-group v-model="formCon.manufactureLotnoOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“启用”，计划员在需求汇总时，系统区分“架次”。不同架次的需求，在需求汇总时按照“架次”汇总为多条需求"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="outSourceDeptOption" label="外包提出单位">
        <a-radio-group v-model="formCon.outSourceDeptOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“启用”，计划员在需求汇总时，系统区分“外包提出单位”。不同外包提出单位的需求，在需求汇总时按照“外包提出单位”汇总为多条需求"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="machiningContentOption" label="加工内容">
        <a-radio-group v-model="formCon.machiningContentOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“启用”，计划员在需求汇总时，系统区分“加工内容”。不同加工内容的需求，在需求汇总时按照“加工内容”汇总为多条需求"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
      <a-form-item field="taskNoOption" label="任务编号">
        <a-radio-group v-model="formCon.taskNoOption">
          <a-radio :value="0">不启用</a-radio>
          <a-radio :value="1">启用</a-radio>
        </a-radio-group>
        <a-tooltip
          content="选择“启用”，计划员在需求汇总时，系统区分“任务编号”。不同任务编号的需求，在需求汇总时按照“任务编号”汇总为多条需求"
        >
          <icon-info-circle v-if="props.isShow" />
        </a-tooltip>
      </a-form-item>
    </a-form>
  </div>
</template>

<script lang="ts" setup>
  import { nextTick, ref } from 'vue';

  const props = defineProps(['isShow']);
  const formCon = ref({
    customerTypeOption: 0,
    projectOption: 0,
    materialSameOption: 1,
    procurementPeriodOption: 0,
    aircraftTypeMarkOption: 0,
    batchOption: 0,
    manufactureLotnoOption: 0,
    outSourceDeptOption: 0,
    machiningContentOption: 0,
    taskNoOption: 0,
  });
  const formConDefault = {
    '1': {},
    '2': { aircraftTypeMarkOption: 1 },
    '3': { aircraftTypeMarkOption: 1 },
    '4': {
      aircraftTypeMarkOption: 1,
      batchOption: 1,
      manufactureLotnoOption: 1,
      outSourceDeptOption: 1,
      machiningContentOption: 1,
      taskNoOption: 1,
    },
    '5': {
      aircraftTypeMarkOption: 1,
      batchOption: 1,
      manufactureLotnoOption: 1,
      outSourceDeptOption: 1,
      machiningContentOption: 1,
      taskNoOption: 1,
    },
  };
  const init = (val, index) => {
    nextTick(() => {
      formCon.value =
        val || Object.assign(formCon.value, formConDefault[index]);
    });
  };
  defineExpose({ formCon, init });
</script>

<style lang="less" scoped>
  .arco-form {
    height: 65vh;
    overflow-y: auto;
  }

  /deep/ .arco-form-item-label-col {
    justify-content: flex-start;
    line-height: 40px;
    text-indent: 16px;
  }

  /deep/ .arco-form-item {
    height: 40px;
    margin: 0;
    line-height: 40px;
    border-bottom: 1px solid #e4e7ed;
  }
</style>
